|
|
Jaap Frank wrote:
> For the probability distribution you use:
>
> #declare f_Den = function(x,y,z) { pow(f_Orb(x,y,z),2) }
>
> I've found in the book where I found my wave-functions
> that it's better to multiply f_Den with 4*pi*R^2 for this is the surface
> of the sphere where you look for your probability.
> ( R = sqrt(x*x+y*y+z*z), so you have to put it inside the declaration
> for the f_Den function)
> I've seen pictures with and without this factor. It seems that it is not
> a big deal, but the probability distributions are not totaly the same.
Yes, I know, I didn't actually check it, just recalled the probability was
the function squared and didn't remember the 4*pi*r*r factor, it's a
mistake on my part :)
> Then you do this:
> ......
> #declare Norm = n_Ang*n_Rad;
> #declare f_Orb = function(x,y,z) { f_Ang(x,y,z)*f_Rad(x,y,z) }
> #declare f_Den = function(x,y,z) { pow(f_Orb(x,y,z),2) }
>
> #declare Orb_pos = function(x,y,z) { value/Norm - f_Orb(x,y,z) }
> #declare Orb_neg = function(x,y,z) { value/Norm + f_Orb(x,y,z) }
>
> #declare Orb = function(x,y,z) { value/Norm - abs(f_Orb(x,y,z)) }
> #declare Den = function(x,y,z) { value/(Norm*Norm) - f_Den(x,y,z) }
>
> It seems to me that you divide everything by Norm, but then your
> dimensions are not correct anymore. You now have f_Orb(x,y,z) / Norm.
> And why do you subtract the orbital from value?
> Norm is part of the wave function and you use it separately.
> I can't follow this. Can you explain?
I can explain, but I don't know if it has any sense. Since I was using the
functions for isosurfaces, I wanted to see the surface where Norm*f_Orb =
value, which is the same as f_Orb = value/Norm and the same as
value/Norm-f_Orb = 0 (in this way, so that the zones with higher values are
*inside* the isosurface. For the negative part, I wanted Norm*f_Orb =
-value. It seemed it rendered faster in this way.
>> P.P.S. Can an isosurface be declared and then the function be altered?
>
> The function that you use inside the isosurface have to be declared
> before, else you get an error. But maybe you mean something else?
I meant something like:
#declare foo = isosurface { blah, blah texture { cool_texture } }
isosurface {
foo
function { this(x,y,z) }
}
isosurface {
foo
function { that(x,y,z) }
}
I think I tried it and it didn't work
--
Linux User #289967 (counter.li.org)
PGP Pub Key ID: 0x01A95F99 (pgp.escomplinux.org)
Post a reply to this message
|
|